import axios from "axios";
import { showToast } from "vant";

// 1. 创建axios的请求实例对象
const http = axios.create({
  baseURL: 'https://meikou-api.itheima.net/',
  timeout: 50000
})

// 2. 配置请求拦截器
// 统一携带token
http.interceptors.request.use((config) => {
  try {
    const user = mk.queryUser()
    if (user.token) {
      config.headers['Authorization'] = `Bearer ${user.token}`
    }
  } catch (error) {
    showToast('美寇SDK异常')
  }
  return config
}, (error) => {
  return Promise.reject(error)
})

// 3. 配置响应拦截器
// 解构数据
// 统一的错误处理(token过期, 请求成功但业务失败)
http.interceptors.response.use((res) => {
  return res
}, (error) => {
  return Promise.reject(error)
})

// 4. 导出实例对象
export { http }